Computers require maintenance, as do most complex systems. When problems occur with their hardware or software, several steps must be taken:
1. The problem must be detected.
2. Information about the problem must be gathered.
3. A provider of maintenance actions must be identified.
4. The information must be transmitted to the provider.
5. The provider must determine one or more possible courses of action.
6. The provider must select a course of action and take it.
One or more embodiments of the present invention relate to step 6, specifically to the selection of the course of action to be taken from a set of one or more than one possible courses of action.
Step 1, the detection of a problem, can be performed by hardware, software or by a human user who observes behavior typical of a problem. Steps 2-5 can be similarly performed by hardware, software or by one more human users or maintenance personnel. In current practice, step 5 is often performed by a human operator at a help desk, located remotely from the site of the problem. This operator interacts with a human user, located proximately to the computer with the problem. The help desk operator asks the user a relies of questions and directs the user to perform a series of actions, these questions and actions being directed to obtaining the most accurate diagnosis possible of the problem. Alternatively, a second computer equipped with diagnostic software may interact directly with the computer with the problem, similarly obtaining data and pet forming actions on the problem computer, with the goal of obtaining the most accurate diagnosis possible of the problem.
Once this diagnosis is obtained, whether by computer-to-computer interaction or by interactions between humans, it now remains to determine a problem remediation process. Often there are multiple ways in which this problem can be fixed. These may be variations of a single way, or completely different ways. As an example, it may be the case that a given computer has an application program that is not mentioning correctly. One remediation procedure may be to uninstall and then reinstall that application program, while another may consist of a possibly complex sequence of steps to edit information in the computer operating system's registry, as in the Microsoft Windows® XP operating system (registered mark of Microsoft Corporation, Redmond, Wash. USA).
Whether the agent designated to fix the problem is human or otherwise, that agent must select among the candidate problem remediation processes. The criteria used in this selection are various, including simplicity, risk, effectiveness, speed, the scope of change and cost, among others. Whatever the chosen criteria, each candidate remediation process must have associated data that allow for comparison with other remediation processes using the selected criteria. In current practice, human agents often make their decisions in the absence of this data, or on the basis of their episodic knowledge of the characteristics of remediation processes that they have personally observed. Reliance on personal observation does not permit the sharing of knowledge among human agents, limiting the improvements possible in an organization responsible for problem remediation.
U.S. Pat. No. 6,571,236 to Ruppelt discloses a method and apparatus for problem diagnosis and solution. In particular, a method for problem diagnosis based on queries received from remote locations includes the steps of determining applicable solution recommendations based on a diagnosis query, displaying the applicable solution recommendations on a screen of a remote terminal, and determining whether a case based reasoning tool is available to answer the diagnosis query. When the case based reasoning tool is available, the method presents the case based reasoning tool on the screen with the applicable solution recommendations.
US Patent Application Publication 2004/0243532 of Steward discloses a method and apparatus/software to assist persons in complex cause-and-effect reasoning. In particular, the method is directed to generating, refining and determining the consequences of complex systems of multiple cause and effect relationships. The method of Steward is applicable to biological systems as well as man-made systems, as it is based on the collecting and using observed behaviors as well as previous understood mechanism or relationships. The method is particularly useful in multi-variable system with significant interactions among sub-components, especially when there is limited expertise or complete understanding of all the components and their respective relationships interactions. In these cases the method provides guidance for future experiments that develop further expertise. The method has particular power and benefit as it provides for a distinction and comparison of the merits of conducting further experiments based on defined criteria. For example alternative solutions or experiments can be suggested and distinguished on the basis of cost, delay or a negative or detrimental outcome, based on prior experience and knowledge of interactions, in contrast to those that provide additional insight or solve the problem with a lower risk of negative implications.
US Patent Application Publication 2006/0095474 of Mitra et. al. discloses a system and method for problem solving through dynamic/interactive concept-mapping. A computer-implemented method of problem solving includes graphically displaying a plurality of concepts, dynamic links between the concepts, and solving a problem based on the displayed concepts and dynamic links. Other embodiments include: a computer-readable medium having instructions thereon for causing a suitably programmed information-processing apparatus to perform a method of the problem solving that includes graphically displaying a plurality of concepts, displaying dynamic links between the concepts, and solving a problem based on the displayed concepts and dynamic links. Still other embodiments include a computerized apparatus that includes a display output unit, a display drive unit that causes a plurality of concepts to be displayed on the display unit, and that causes dynamic links between the concepts to be displayed, and a solution unit that solves a problem based on the displayed concepts and dynamic links, and that displays the solution.
It would be desirable to overcome the limitations in previous approaches.